package io.gitee.yxsnake.embark.web.core.utils;

import io.gitee.yxsnake.embark.web.core.exception.ServiceException;
import org.dromara.hutool.core.text.StrUtil;

/**
 * @author snake
 * @description
 * @since 2024/9/29 0:45
 */
public class ExceptionUtils {
    /**
     * 返回一个新的异常，统一构建，方便统一处理
     *
     * @param msg 消息
     * @param t   异常信息
     * @return 返回异常
     */
    public static ServiceException get(String msg, Throwable t, Object... params) {
        return new ServiceException(StrUtil.format(msg, params), t);
    }

    /**
     * 重载的方法
     *
     * @param msg 消息
     * @return 返回异常
     */
    public static ServiceException get(String msg, Object... params) {
        return new ServiceException(StrUtil.format(msg, params));
    }

    /**
     * 重载的方法
     *
     * @param t 异常
     * @return 返回异常
     */
    public static ServiceException get(Throwable t) {
        return new ServiceException(t);
    }
}

